package com.joplus.housekeeper.bean;

import android.os.Parcel;
import android.os.Parcelable;

import java.util.List;

/**
 * author： ccm
 * time： 2017/7/4.
 * description：
 */

public class AirportServiceOrder implements Parcelable {
    private String serviceType;
    private String note;
    private String orderId;
    private String airportSid;
    private String privateCarDriver;
    private String fightNumber;
    private String serviceLevel;
    private String specialCarModel;
    private String privateCarModel;
    private String serviceTime;
    private String sid;
    private String airportName;
    private String specialCarDestination;
    private String passengerSids;
    private String carInformation;
    private List<Passengers> passengers;
    private Airport airport;

    public Airport getAirport() {
        return airport;
    }

    public void setAirport(Airport airport) {
        this.airport = airport;
    }

    public static class Airport implements Parcelable {
        private String vipAirportDropOff;
        private String vvipAirportDropOff;
        private String vipAirportPickup;
        private String vvipAirportPickup;

        public String getVipAirportDropOff() {
            return vipAirportDropOff;
        }

        public void setVipAirportDropOff(String vipAirportDropOff) {
            this.vipAirportDropOff = vipAirportDropOff;
        }

        public String getVvipAirportDropOff() {
            return vvipAirportDropOff;
        }

        public void setVvipAirportDropOff(String vvipAirportDropOff) {
            this.vvipAirportDropOff = vvipAirportDropOff;
        }

        public String getVipAirportPickup() {
            return vipAirportPickup;
        }

        public void setVipAirportPickup(String vipAirportPickup) {
            this.vipAirportPickup = vipAirportPickup;
        }

        public String getVvipAirportPickup() {
            return vvipAirportPickup;
        }

        public void setVvipAirportPickup(String vvipAirportPickup) {
            this.vvipAirportPickup = vvipAirportPickup;
        }

        @Override
        public int describeContents() {
            return 0;
        }

        @Override
        public void writeToParcel(Parcel dest, int flags) {
            dest.writeString(this.vipAirportDropOff);
            dest.writeString(this.vvipAirportDropOff);
            dest.writeString(this.vipAirportPickup);
            dest.writeString(this.vvipAirportPickup);
        }

        public Airport() {
        }

        protected Airport(Parcel in) {
            this.vipAirportDropOff = in.readString();
            this.vvipAirportDropOff = in.readString();
            this.vipAirportPickup = in.readString();
            this.vvipAirportPickup = in.readString();
        }

        public static final Creator<Airport> CREATOR = new Creator<Airport>() {
            @Override
            public Airport createFromParcel(Parcel source) {
                return new Airport(source);
            }

            @Override
            public Airport[] newArray(int size) {
                return new Airport[size];
            }
        };
    }

    public String getServiceType() {
        return serviceType;
    }

    public void setServiceType(String serviceType) {
        this.serviceType = serviceType;
    }

    public String getNote() {
        return note;
    }

    public void setNote(String note) {
        this.note = note;
    }

    public String getOrderId() {
        return orderId;
    }

    public void setOrderId(String orderId) {
        this.orderId = orderId;
    }

    public String getAirportSid() {
        return airportSid;
    }

    public void setAirportSid(String airportSid) {
        this.airportSid = airportSid;
    }

    public String getPrivateCarDriver() {
        return privateCarDriver;
    }

    public void setPrivateCarDriver(String privateCarDriver) {
        this.privateCarDriver = privateCarDriver;
    }

    public String getFightNumber() {
        return fightNumber;
    }

    public void setFightNumber(String fightNumber) {
        this.fightNumber = fightNumber;
    }

    public String getServiceLevel() {
        return serviceLevel;
    }

    public void setServiceLevel(String serviceLevel) {
        this.serviceLevel = serviceLevel;
    }

    public String getSpecialCarModel() {
        return specialCarModel;
    }

    public void setSpecialCarModel(String specialCarModel) {
        this.specialCarModel = specialCarModel;
    }

    public String getPrivateCarModel() {
        return privateCarModel;
    }

    public void setPrivateCarModel(String privateCarModel) {
        this.privateCarModel = privateCarModel;
    }

    public String getServiceTime() {
        return serviceTime;
    }

    public void setServiceTime(String serviceTime) {
        this.serviceTime = serviceTime;
    }

    public String getSid() {
        return sid;
    }

    public void setSid(String sid) {
        this.sid = sid;
    }

    public String getAirportName() {
        return airportName;
    }

    public void setAirportName(String airportName) {
        this.airportName = airportName;
    }

    public String getSpecialCarDestination() {
        return specialCarDestination;
    }

    public void setSpecialCarDestination(String specialCarDestination) {
        this.specialCarDestination = specialCarDestination;
    }

    public String getPassengerSids() {
        return passengerSids;
    }

    public void setPassengerSids(String passengerSids) {
        this.passengerSids = passengerSids;
    }

    public String getCarInformation() {
        return carInformation;
    }

    public void setCarInformation(String carInformation) {
        this.carInformation = carInformation;
    }

    public List<Passengers> getPassengers() {
        return passengers;
    }

    public void setPassengers(List<Passengers> passengers) {
        this.passengers = passengers;
    }

    public static class Passengers implements Parcelable {
        private String sid;
        private String name;
        private String gender;
        private String cardType;
        private String idcard;
        private String passportNumber;
        private String birthday;
        private String nationality;
        private String passportExpiryDate;
        private String passportIssuePlace;
        private String accountSid;
        private String cellphone;
        private String status;

        public String getSid() {
            return sid;
        }

        public void setSid(String sid) {
            this.sid = sid;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        public String getGender() {
            return gender;
        }

        public void setGender(String gender) {
            this.gender = gender;
        }

        public String getCardType() {
            return cardType;
        }

        public void setCardType(String cardType) {
            this.cardType = cardType;
        }

        public String getIdcard() {
            return idcard;
        }

        public void setIdcard(String idcard) {
            this.idcard = idcard;
        }

        public String getPassportNumber() {
            return passportNumber;
        }

        public void setPassportNumber(String passportNumber) {
            this.passportNumber = passportNumber;
        }

        public String getBirthday() {
            return birthday;
        }

        public void setBirthday(String birthday) {
            this.birthday = birthday;
        }

        public String getNationality() {
            return nationality;
        }

        public void setNationality(String nationality) {
            this.nationality = nationality;
        }

        public String getPassportExpiryDate() {
            return passportExpiryDate;
        }

        public void setPassportExpiryDate(String passportExpiryDate) {
            this.passportExpiryDate = passportExpiryDate;
        }

        public String getPassportIssuePlace() {
            return passportIssuePlace;
        }

        public void setPassportIssuePlace(String passportIssuePlace) {
            this.passportIssuePlace = passportIssuePlace;
        }

        public String getAccountSid() {
            return accountSid;
        }

        public void setAccountSid(String accountSid) {
            this.accountSid = accountSid;
        }

        public String getCellphone() {
            return cellphone;
        }

        public void setCellphone(String cellphone) {
            this.cellphone = cellphone;
        }

        public String getStatus() {
            return status;
        }

        public void setStatus(String status) {
            this.status = status;
        }

        @Override
        public int describeContents() {
            return 0;
        }

        @Override
        public void writeToParcel(Parcel dest, int flags) {
            dest.writeString(this.sid);
            dest.writeString(this.name);
            dest.writeString(this.gender);
            dest.writeString(this.cardType);
            dest.writeString(this.idcard);
            dest.writeString(this.passportNumber);
            dest.writeString(this.birthday);
            dest.writeString(this.nationality);
            dest.writeString(this.passportExpiryDate);
            dest.writeString(this.passportIssuePlace);
            dest.writeString(this.accountSid);
            dest.writeString(this.cellphone);
            dest.writeString(this.status);
        }

        public Passengers() {
        }

        protected Passengers(Parcel in) {
            this.sid = in.readString();
            this.name = in.readString();
            this.gender = in.readString();
            this.cardType = in.readString();
            this.idcard = in.readString();
            this.passportNumber = in.readString();
            this.birthday = in.readString();
            this.nationality = in.readString();
            this.passportExpiryDate = in.readString();
            this.passportIssuePlace = in.readString();
            this.accountSid = in.readString();
            this.cellphone = in.readString();
            this.status = in.readString();
        }

        public static final Creator<Passengers> CREATOR = new Creator<Passengers>() {
            @Override
            public Passengers createFromParcel(Parcel source) {
                return new Passengers(source);
            }

            @Override
            public Passengers[] newArray(int size) {
                return new Passengers[size];
            }
        };
    }

    @Override
    public int describeContents() {
        return 0;
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeString(this.serviceType);
        dest.writeString(this.note);
        dest.writeString(this.orderId);
        dest.writeString(this.airportSid);
        dest.writeString(this.privateCarDriver);
        dest.writeString(this.fightNumber);
        dest.writeString(this.serviceLevel);
        dest.writeString(this.specialCarModel);
        dest.writeString(this.privateCarModel);
        dest.writeString(this.serviceTime);
        dest.writeString(this.sid);
        dest.writeString(this.airportName);
        dest.writeString(this.specialCarDestination);
        dest.writeString(this.passengerSids);
        dest.writeString(this.carInformation);
        dest.writeTypedList(this.passengers);
        dest.writeParcelable(this.airport, flags);
    }

    public AirportServiceOrder() {
    }

    protected AirportServiceOrder(Parcel in) {
        this.serviceType = in.readString();
        this.note = in.readString();
        this.orderId = in.readString();
        this.airportSid = in.readString();
        this.privateCarDriver = in.readString();
        this.fightNumber = in.readString();
        this.serviceLevel = in.readString();
        this.specialCarModel = in.readString();
        this.privateCarModel = in.readString();
        this.serviceTime = in.readString();
        this.sid = in.readString();
        this.airportName = in.readString();
        this.specialCarDestination = in.readString();
        this.passengerSids = in.readString();
        this.carInformation = in.readString();
        this.passengers = in.createTypedArrayList(Passengers.CREATOR);
        this.airport = in.readParcelable(Airport.class.getClassLoader());
    }

    public static final Creator<AirportServiceOrder> CREATOR = new Creator<AirportServiceOrder>() {
        @Override
        public AirportServiceOrder createFromParcel(Parcel source) {
            return new AirportServiceOrder(source);
        }

        @Override
        public AirportServiceOrder[] newArray(int size) {
            return new AirportServiceOrder[size];
        }
    };
}